/* @(#)GSBusEmergencyOrderConfirmExeDelAction.java   
 *
 * Project: GS
 *
 * Modify Information:
 * =============================================================================
 *   Author       Date       Description
 *   ------------ ---------- ---------------------------------------------------
 *   Jenny Li    2006-4-17     新增
 *
 * Copyright Notice:
 * =============================================================================
 *    Copyright (c) 2001-2006 Beijing HiTRUST Technology Co., Ltd. 1808 Room, 
 *        Science & Technology Building, No. 9 South Street, Zhong Guan Cun, 
 *        Haidian District, Beijing ,100081, China All rights reserved.
 *
 *    This software is the confidential and proprietary information of
 *        Beijing HiTRUST Technology Co., Ltd. ("Confidential Information").
 *        You shall not disclose such Confidential Information and shall use it
 *        only in accordance with the terms of the license agreement you entered
 *        into with HiTRUST.
 *
 * Warning:
 * =============================================================================
 * 
 */
package com.hitrust.gs.action;

import java.util.ArrayList;
import java.util.HashMap;

import com.hitrust.gs.bean.GSOperatorBean;
import com.hitrust.gs.business.GSManufactureProcessor;
import com.hitrust.gs.business.GSOrderDeptInfoProcessor;
import com.hitrust.gs.business.GSTempOrderProcesser;
import com.hitrust.gs.form.GSEmergyOrderConfExeDCForm;
import com.hitrust.gs.lib.GSBaseConstants;
import com.hitrust.gs.lib.GSLogWriter;
import com.hitrust.gs.service.GSBaseAction;
import com.hitrust.gs.service.GSBaseForm;
import com.hitrust.gs.util.exception.GSException;
import com.hitrust.gs.vo.GSBusEmergencyOrderConfirmVO;

/**
 * 
 */
public class GSBusEmergencyOrderConfirmExeDelAction extends GSBaseAction {

    /* (non-Javadoc)
     * @see com.hitrust.gs.service.GSBaseAction#execute(com.hitrust.gs.service.GSBaseForm)
     */
    public String execute(GSBaseForm aForm) throws Exception {
        GSEmergyOrderConfExeDCForm tForm = (GSEmergyOrderConfExeDCForm)aForm;
        ArrayList tList = new ArrayList();
        if(tForm.index != null && tForm.index.length > 0){
            for(int i=0; i < tForm.index.length; i++){
                for(int j=0; j<tForm.orderDetailIds.length; j++){
                    if(tForm.index[i].equals(tForm.orderDetailIds[j])){
                        GSBusEmergencyOrderConfirmVO tVO = new GSBusEmergencyOrderConfirmVO();
                        tVO.orderDetailId = tForm.orderDetailIds[j];
                        tList.add(tVO);
                    }
                }
            }
            GSTempOrderProcesser tProc = new GSTempOrderProcesser();
            boolean tFlag = tProc.delTempOrder(tList);
            if(tFlag){
                tForm.getRequest().setAttribute("message","共"+tList.size() + "笔删除成功");
            }else{
                tForm.getRequest().setAttribute("message","共"+tList.size() + "笔删除失败");
            }
            tForm.getRequest().setAttribute("requery","true");
        }else{
            GSLogWriter.error(GSException.E00003_MSG);
            throw new GSException(GSException.E00003,GSException.E00003_MSG);
        }
        //取得当前操作员可查询的订货单位和送货地址
        GSOperatorBean tOperBean = (GSOperatorBean)tForm.getSession().getAttribute(GSBaseConstants.LOGIN);
        GSOrderDeptInfoProcessor tProc = new GSOrderDeptInfoProcessor();
        HashMap tMap = tProc.getOrderDeptInfoOfBusOper(tOperBean.getGs_oper_org_id());
        tForm.getRequest().setAttribute("orderdept",tMap);
        
        //取得产品分类
        GSManufactureProcessor tManufProc = new GSManufactureProcessor();
        tManufProc.getManufactureOfLevel(tForm);
        return GSBaseConstants.FORWARD_SUCCESS;
    }

}
